
// Variables globales

var xml; 
var selectedProducto;


/* Funciones correspondientes a la gestión de Productos */

function goBuscarPro() {
	$.mobile.changePage('#buscar_producto', {
		transition : "slide"
	});
}


//Cambiado
function goCrearPro() {
	$.mobile.changePage('#crear_producto', {
		transition : "slide"
	});
}

//Cambiado
function goModificarPro() {
	document.getElementById("m_idProducto").value = $('#h_idProductoM').val();
	document.getElementById("m_nombrepro").value = $('#h_nombreproM').val();
	document.getElementById("m_descripcion").value = $('#h_descripcionM').val();
	document.getElementById("m_coste").value = $('#h_costeM').val();
	document.getElementById("m_precio").value = $('#h_precioM').val();
	document.getElementById("m_iva").value = $('#h_ivaM').val();
	document.getElementById("m_idProveedor").value = $('#h_idProveedorM').val();
	document.getElementById("m_idAlmacen").value = $('#h_idAlmacenM').val();
	$.mobile.changePage('#modificar_producto', {
		transition : "slide"
	});
}

//Cambiado
function mostrarAnadirProducto() {
	$('#anadir_producto').popup('open').trigger('create');	
}

//Cambiado
//Validar producto
function validarProducto(){
	var a_nombre = $('#c_nombrepro').val();
	var a_coste = $('#c_coste').val();
	var a_precio = $('#c_precio').val();
	var a_iva = $('#c_iva').val();
	var a_idAlmacen = $('#c_idAlmacen').val();
	var a_idProveedor = $('#c_idProveedor').val();
	
	
	if(a_nombre == '' ||
		   	a_coste == '' || 
		   	a_precio == '' || 
		   	a_iva == ''){
			$('#dlg_aviso_crear_producto').popup('open').trigger('create');
		} else {
		grabarProducto();
	}
}


// Buscar productos

function buscar_producto(destino, transicion) {
	var serviceURL = 'http://10.0.2.2:8080/Phama/pharmaws';
	$.mobile.showPageLoadingMsg(); 
	$.soap({
	    url: serviceURL,
	    appendMethodToURL: false, 
	    method: 'buscarProductos',
	    namespaceQualifier: 'ns2',
	    namespaceUrl: 'http://ws.phama.it.eps.upo.org/',
	    params: {
	    	 nombre:  $('#b_nombrepro').val(),
		     coste: $('#b_coste').val(),
		     precio: $('#b_precio').val(),
		     idAlmacen: $('#b_idAlmacen').val(),
		     idProveedor:  $('#b_idProveedor').val()
	    },

	    success: function (soapResponse) {
	    	var xmlDoc = $.parseXML(soapResponse);
	        xml = $(xmlDoc);
	        $.mobile.hidePageLoadingMsg();
	        
	        var productos = xml.find("return");
	        if(productos.length>0){
	        	var lista = "<ul data-role='listview' data-inset='true'>";
	        	$("#resultadoProductos").children().remove();
	        	$('#resultado_buscar_producto').addClass('ui-page');
	    	    var pro = '';
	    	    productos.each(function(index,element){
	    	    	 idProducto = $(element).find('idProducto').first().text();
	    	    	 pro = "<li><a href='#' onclick=\"accionProducto("+idProducto+")\">" +
	    	    	 		"N&uacute;m. " + $(element).find('idProducto').first().text() +
	    	    	 		' : ' +
	    	    	 		$(element).find('nombre').last().text() + 
	    	    	 		"</a></li>";
	    	    	 lista += pro;
	    	    });
	    	    lista += "</ul>";
	    	    $('#resultadoProductos').empty().append(lista).listview().trigger('create');
	    	    $.mobile.changePage(destino, {transition : transicion}); 
	        } else {
	        	$('#dlg_aviso_buscar_producto h1').html('Aviso');
	        	$('#dlg_aviso_buscar_producto p').html('No se han encontrado resultados.');
	        	$('#dlg_aviso_buscar_producto').popup('open');
	        }
	    },
	    error: function (SOAPResponse) {
	    	$.mobile.hidePageLoadingMsg();
	    	$('#dlg_aviso_buscar_producto h1').html('Error');
        	$('#dlg_aviso_buscar_producto p').html(SOAPResponse);
        	$('#dlg_aviso_buscar_producto').popup('open');
	    }
	});
}

//Cambiado
function accionProducto(idProducto){
	selectedProducto = idProducto; // Se establece al variable global selectedProducto  con el número del producto seleccionado por el usuario
	var accion = $('#bnAccionProducto').val();
	if(accion=="editar"){
		mostrarProducto("#ver_productoModificar", "none");
	} else {
		$('#num_producto').html(selectedProducto);
		$('#confirmar_borrar_producto').popup('open');
	}
}

//Cambiado
// Mostrar el producto seleccionado
function mostrarProducto(destino, transicion){
var productos = xml.find("return");
	
	productos.each(function(index,element){
		var idProductoAux = $(element).find('idProducto').first().text();
		if(selectedProducto==idProductoAux){	
			//$('#ver_producto').addClass('ui-page');
			$('#ver_productoModificar').addClass('ui-page');
			
			document.getElementById("h_idProductoM").value = $(element).find('idProducto').first().text();
		/*	var a = $('#v_nombrepro').html($(element).find('nombre').last().text());
			var b = $('#v_descripcion').html($(element).find('descripcion').first().text());
			var c = $('#v_coste').html($(element).find('coste').first().text());
			var d = $('#v_precio').html($(element).find('precio').first().text());
			var e = $('#v_iva').html($(element).find('iva').first().text());
			var f = $('#v_idProveedor').html($(element).find('proveedor').find('nombre').text());
			var g = $('#v_idAlmacen').html($(element).find('almacen').find('nombre').text());
			*/
			var a = $(element).find('nombre').last().text();
			var b = $(element).find('descripcion').first().text();
			var c = $(element).find('coste').first().text();
			var d = $(element).find('precio').first().text();
			var e = $(element).find('iva').first().text();
			var f = $(element).find('proveedor').find('nombre').text();
			var g = $(element).find('almacen').find('nombre').text();

			$('#v_nombreproM').html(a);
			$('#v_descripcionM').html(b);
			$('#v_costeM').html(c);
			$('#v_precioM').html(d);
			$('#v_ivaM').html(e);
			$('#v_idProveedorM').html(f);
			$('#v_idAlmacenM').html(g);

			
			document.getElementById("h_nombreproM").value = a;
			document.getElementById("h_descripcionM").value = b;
			document.getElementById("h_costeM").value = c;
			document.getElementById("h_precioM").value = d;
			document.getElementById("h_ivaM").value = e;
			document.getElementById("h_idProveedorM").value = f;
			document.getElementById("h_idAlmacenM").value = g;
		
			
			/*
			$('#v_nombrepro').html($(element).find('nombre').last().text());
			$('#v_descripcion').html($(element).find('descripcion').first().text());
			$('#v_coste').html($(element).find('coste').first().text());
			$('#v_precio').html($(element).find('precio').first().text());
			$('#v_iva').html($(element).find('iva').first().text());
			$('#v_idProveedor').html($(element).find('proveedor').find('nombre').text());
			$('#v_idAlmacen').html($(element).find('almacen').find('nombre').text());
*/
		}
	});	
	$.mobile.changePage(destino, {transition : transicion});
}




/*-----------------------------------Metodos necesarios para MODIFICAR----------------------------*/

//Cambiado
//Validar producto
function validarProductoModificado(){
	var a_idProducto = $('#m_idProducto').val();
	var a_nombre = $('#m_nombrepro').val();
	var a_coste = $('#m_coste').val();
	var a_precio = $('#m_precio').val();
	var a_iva = $('#m_iva').val();
	var a_idProveedor = $('#m_idProveedor').val();
	var a_idAlmacen = $('#m_idAlmacen').val();

	if(a_idProducto == '' ||
		a_nombre == '' ||
	   	a_coste == '' || 
	   	a_precio == '' || 
	   	a_iva == '' ||
	   	a_idProveedor == '' || 
	   	a_idAlmacen == '' ){
		$('#dlg_aviso_crear_producto').popup('open').trigger('create');
	} else {
		modificarProducto();
	}
}

//Cambiado
//Modificar cliente
function modificarProducto(){
	var a_idProducto = $('#m_idProducto').val();
	var a_nombre = $('#m_nombrepro').val();
	var a_descripcion = $('#m_descripcion').val();
	var a_coste = $('#m_coste').val();
	var a_precio = $('#m_precio').val();
	var a_iva = $('#m_iva').val();
	var a_idAlmacen = $('#m_idAlmacen').val();
	var a_idProveedor = $('#m_idProveedor').val();
	var serviceURL = 'http://10.0.2.2:8080/Phama/pharmaws';
	$.mobile.showPageLoadingMsg(); 

	$.soap({
	    url: serviceURL,
	    appendMethodToURL: false, 
	    method: 'modificarProducto',
	    namespaceQualifier: 'ns2',
	    namespaceUrl: 'http://ws.phama.it.eps.upo.org/',
	    params: {
	    	idProducto: a_idProducto,
	    	 nombre: a_nombre,
				descripcion: a_descripcion,
				coste: a_coste,
				precio: a_precio,
				iva: a_iva,
				idAlmacen: a_idAlmacen,
				idProveedor: a_idProveedor
	    },
	    success: function (soapResponse) {
	    	$('#ver_producto').addClass('ui-page');
			
			$('#v_nombrepro').html(a_nombre);
			$('#v_descripcion').html(a_descripcion);
			$('#v_coste').html(a_coste);
			$('#v_precio').html(a_precio);
			$('#v_iva').html(a_iva);
			$('#v_idAlmacen').html(a_idAlmacen).find('nombre').text();
			$('#v_idProveedor').html(a_idProveedor).find('nombre').text();
	    	$.mobile.changePage("#ver_producto", "none");
	    },
	    error: function (SOAPResponse) {
	    	$.mobile.hidePageLoadingMsg();
	    	alert(SOAPResponse);
	    }
	});
}



//Cambiado
//Borrar el producto seleccionado
function borrarProducto(destino, transicion){
	var serviceURL = 'http://10.0.2.2:8080/Phama/pharmaws';
	$.mobile.showPageLoadingMsg(); 
	$.soap({
	    url: serviceURL,
	    appendMethodToURL: false, 
	    method: 'eliminarProductos',
	    namespaceQualifier: 'ns2',
	    namespaceUrl: 'http://ws.phama.it.eps.upo.org/',
	    params: {
	        idProducto:  selectedProducto
	    },
	    success: function (soapResponse) {
	    	var xmlDoc = $.parseXML(soapResponse);
	        $.mobile.hidePageLoadingMsg();
	        buscar_producto(destino,transicion);
	    },
	    error: function (SOAPResponse) {
	    	$.mobile.hidePageLoadingMsg();
	    	alert(SOAPResponse);
	    }
	});
}

//Cambiado
//Crear nuevo producto
function grabarProducto(){
	var a_nombre = $('#c_nombrepro').val();
	var a_descripcion = $('#c_descripcion').val();
	var a_coste = $('#c_coste').val();
	var a_precio = $('#c_precio').val();
	var a_iva = $('#c_iva').val();
	var a_idAlmacen = $('#c_idAlmacen').val();
	var a_idProveedor = $('#c_idProveedor').val();
	var serviceURL = 'http://10.0.2.2:8080/Phama/pharmaws';
	$.mobile.showPageLoadingMsg(); 

	$.soap({
	    url: serviceURL,
	    appendMethodToURL: false, 
	    method: 'aniadirProducto',
	    namespaceQualifier: 'ns2',
	    namespaceUrl: 'http://ws.phama.it.eps.upo.org/',
	    params: {
	        nombre: a_nombre,
			descripcion: a_descripcion,
			coste: a_coste,
			precio: a_precio,
			iva: a_iva,
			idAlmacen: a_idAlmacen,
			idProveedor: a_idProveedor
	    },
	    success: function (soapResponse) {
	    	$('#ver_producto').addClass('ui-page');
			
			$('#v_nombrepro').html(a_nombre);
			$('#v_descripcion').html(a_descripcion);
			$('#v_coste').html(a_coste);
			$('#v_precio').html(a_precio);
			$('#v_iva').html(a_iva);
			$('#v_idAlmacen').html(a_idAlmacen);
			$('#v_idProveedor').html(a_idProveedor);

	    	$.mobile.changePage("#ver_producto", "none");
	    	
	    },
	    error: function (SOAPResponse) {
	    	$.mobile.hidePageLoadingMsg();
	    	alert(SOAPResponse);
	    }
	});
}
